package com.ruoyi.system.domain;

import java.math.BigDecimal;

import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 设计方案计算结果对象 mstn_scheme_compute_result
 *
 * 参考
 * https://blog.csdn.net/qq_40110781/article/details/140147143
 * @author ruoyi
 * @date 2024-09-18
 */
@Data
public class MstnSchemeComputeResult extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long resultId;

    /** 批次id */
    private Long batchId;

    /** 项目id */
    @Excel(name = "项目id")
    private Long projectId;

    /** 工况类型(1=额定工况 2=混合石脑油EOR 3=混合C2SOR 4=HSSB 5=TLE-2 6=SD-1 ) */
    @Excel(name = "工况类型(1=额定工况 2=混合石脑油EOR 3=混合C2SOR 4=HSSB 5=TLE-2 6=SD-1 )")
    private String conditionType;

    /** 催化剂id */
    @Excel(name = "催化剂id")
    private Long catalystsId;

    /** 催化剂名称 */
    @Excel(name = "催化剂名称")
    private String catalystsName;

    /** 催化剂类型号 */
    @Excel(name = "催化剂类型号")
    private String categoryName;

    /** 每台催化剂体积 */
    @Excel(name = "每台催化剂体积")
    private BigDecimal catalystsVolume;

    /** 反应器数 */
    @Excel(name = "反应器数")
    private Integer reactorCount;

    /** 催化剂总体积 */
    @Excel(name = "催化剂总体积")
    private BigDecimal catalystTotalVolume;

    /** 每台反应器催化剂层数 */
    @Excel(name = "每台反应器催化剂层数")
    private Integer reactorFloor;

    /** 催化剂单元阵列 */
    @Excel(name = "催化剂单元阵列")
    private String unitMatrixCount;

    /** 每台反应器每层催化剂单元数量 */
    @Excel(name = "每台反应器每层催化剂单元数量")
    private Integer minReactorUnitVolume;

    /** 单元型号 */
    @Excel(name = "单元型号")
    private String moduleName;

    /** 单元尺寸 */
    @Excel(name = "单元尺寸")
    private String moduleSize;

    /** 每层催化剂净高 */
    @Excel(name = "每层催化剂净高")
    private BigDecimal catalystsHeight;

    /** 反应器尺寸 */
    @Excel(name = "反应器尺寸")
    private String reactorSize;

    /** 每个单元毛重 */
    @Excel(name = "每个单元毛重")
    private BigDecimal weight;

    @Excel(name = "误差")
    private BigDecimal errorRate;

    /** 每台反应器内单元数量 */
    @Excel(name = "每台反应器内单元数量")
    private Integer singleReactorUnitCount;

    /** 每个单元毛重 */
    @Excel(name = "总毛重")
    private BigDecimal totalWeight;

    /** 机组数量 */
    @Excel(name = "机组数量")
    private Integer groupCount;

    /** 每台反应器催化剂体积 */
    @Excel(name = "每台反应器催化剂体积")
    private BigDecimal singleReactorCatalystsVolume;

    /** 性能保证前提条件 */
    private String  precondition;
    /** 其他备注说明 */
    private String remark;
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("resultId", getResultId())
            .append("projectId", getProjectId())
            .append("conditionType", getConditionType())
            .append("catalystsId", getCatalystsId())
            .append("categoryName", getCategoryName())
            .append("catalystsVolume", getCatalystsVolume())
            .append("reactorCount", getReactorCount())
            .append("catalystTotalVolume", getCatalystTotalVolume())
            .append("reactorFloor", getReactorFloor())
            .append("unitMatrixCount", getUnitMatrixCount())
            .append("minReactorUnitVolume", getMinReactorUnitVolume())
            .append("moduleName", getModuleName())
            .append("moduleSize", getModuleSize())
            .append("catalystsHeight", getCatalystsHeight())
            .append("reactorSize", getReactorSize())
            .append("weight", getWeight())
            .append("singleReactorUnitCount", getSingleReactorUnitCount())
            .toString();
    }
}
